package com.atwisdom.star.docs.business;

import com.atwisdom.star.common.vo.ResultInfo;
import com.atwisdom.star.core.dao.pojo.functionClass.Documents;
import com.atwisdom.star.exception.pojo.BusinessException;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.multipart.MultipartFile;

public interface DocsBslService {

    /**
     * 批量上传文件
     * @param files 参数
     * @return 返回值
     */
    ResultInfo<?> uploadFiles(@RequestParam MultipartFile[] files) throws BusinessException;

    /**
     * 上传文件
     * @param file 参数
     * @return 返回值
     */
    ResultInfo<?> uploadFile(@RequestParam MultipartFile file, @RequestParam String id) throws BusinessException;

    /**
     * 下载文件
     * @param documents 文档参数
     * @return 返回值
     */
    ResultInfo<?> downloadFile(Documents documents) throws BusinessException;

    /**
     * 下载文件
     * @param id 文档参数
     * @return 返回值
     */
    ResultInfo<?> downloadFileById(String id) throws BusinessException;

    /**
     * 删除文件
     * @param documents 文档参数
     * @return 返回值
     */
    ResultInfo<?> deleteFile(Documents documents) throws BusinessException;

    /**
     * 删除文件
     * @param id 文档参数
     * @return 返回值
     */
    ResultInfo<?> deleteFileById(String id) throws BusinessException;

}
